The invention relates to image stretching.
A high resolution liquid crystal display (LCD) panel has discrete pixels, whereas a traditional analog cathode ray tube (CRT) monitor uses nondiscrete scalable pixels. On a high resolution LCD panel, standard text mode video images use only a portion of the screen rather than the entire viewable area.
Text image stretching is a method in which an original text mode video image of a given resolution and number of pixels is xe2x80x9cstretchedxe2x80x9d (by interpolation) to fill a larger video screen area. This is useful for allowing a smaller amount of video screen information to fill a physically larger screen space for ease of viewing.
As a simple example, a standard video text screen might consist of 640 pixels horizontally by 480 pixels vertically, used to display 80 horizontal characters by 25 vertical characters each 8 pixels wide by 16 pixels high. For a physical screen capable of a larger number of pixels, such as a super VGA (SVGA) LCD display with a resolution of 800 horizontal by 600 vertical pixels, the text screen would fill only 80% of the physical screen, leaving 20% of the screen unused. Text stretching would stretch all the characters, perhaps to 10 pixels horizontal by 20 pixels vertical, to fill the entire physical video screen area. No additional information is displayed, but the entire display is used.
Typically, there is no interaction between the video device driver and the video BIOS in a computer system with respect to text image stretching, as the video device driver controls graphics display, not text display. Text image stretching is activated when the video BIOS in the computer system programs special registers in the video chipset. The special registers indicate if text stretching has been activated, the dimensions of the stretch, and the algorithm used to perform the stretch. The video BIOS can activate text image stretching either automatically or in response to a command entered by a user through a user interface such as a keyboard. Once activated, the video chipset will perform the text image stretching when a text image is presented for display. Text stretching can be deactivated by the user, which will cause the video BIOS to clear the special registers.
In general, in one aspect, the invention features a method of managing stretching of an image on a display panel of a computer system. The method includes setting a stored value to indicate if the computer system is capable of stretching the image and checking the value prior to image stretching. If the value is set indicating the computer system is capable of stretching the image, then image stretching is activated.
Certain implementations of the invention include one or more of the following features. The image presented for display on the display panel is stretched if image stretching is activated. The display panel includes a non-scalable pixel array or a liquid crystal display panel. The value includes a register bit. The computer system includes a video system for controlling the display panel and for setting the value. The video system includes a video device driver for setting the value, and the value is set within a hardware video driver. The value is set if a video device driver specific to the hardware video driver is available, and the hardware video driver includes a video chipset or a register for storing the value. The value is checked by video firmware, which includes a video BIOS program. The image stretching includes text image stretching.
In general, in another aspect, the invention features a video system for controlling an image on a display panel of a computer system. The video system includes a device for setting a value to indicate if the video system is capable of stretching the image. The video system further includes a second device for checking the value and activating the image stretching if the value is set indicating the video system is capable of stretching the image.
Certain implementations of the invention include one or more of the following features. The video system includes a third device for stretching an image presented for display on the display panel if image stretching is activated. The display panel includes a non-scalable pixel array or a liquid crystal display panel. The value includes a register bit. The first device includes a video device driver. The video system further includes a hardware video driver in which the value is set. The value is set if a video device driver specific to the hardware video driver is available, and the hardware video driver includes a video chipset or a register for storing the value. The second device includes video firmware, which includes a video BIOS program. The image stretching includes text image stretching.
In general, in another aspect, the invention features a computer system including a display panel and a video system for controlling an image on the display panel. The video system includes a device for setting a value to indicate if the video system is capable of stretching the image. The video further includes a second device for checking the value and activating the image stretching if the value is set indicating the video system is capable of stretching the image.
Certain implementations of the invention include one or more of the following features. The video system includes a third device for stretching an image presented for display on the display panel if image stretching is activated. The display panel includes a non-scalable pixel array or a liquid crystal display panel. The value includes a register bit. The first device includes a video device driver. The video system further includes a hardware video driver in which the value is set. The value is set if a video device driver specific to the hardware video driver is available, and the hardware video driver includes a video chipset or a register for storing the value. The second device includes video firmware, which includes a video BIOS program. The computer system includes a hard disk drive for initially storing the video device driver. The computer system also includes a keyboard on which a user can enter a command to cause the second device to activate image stretching if the value is set indicating the video system is capable of stretching the image. The image stretching includes text image stretching.
In general, in another aspect, the invention features a video system for controlling an image on a display panel of a computer system. The video system includes a device for indicating if the video system is capable of stretching the image. The video system further includes a second device for activating the image stretching if the first device indicates the video system is capable of stretching the image.
Certain implementations of the invention include one or more of the following features. The video system includes a third device for stretching an image presented for display on the display panel if image stretching is activated. The display panel includes a liquid crystal display panel. The first device includes a video device driver, and the second device includes video firmware.
Certain implementations of the invention have one or more of the following advantages. Text image stretching can be activated on all platforms on which a custom video device driver can be developed. An xe2x80x9cinterlockxe2x80x9d is provided from the video device driver to the video BIOS to enable the video BIOS to safely activate text image stretching without risking damage to the display panel.
Other advantages and features will become apparent from the following description and from the claims.